package com.hyg.oa.common;

import javax.servlet.http.HttpServletRequest;

import org.springframework.util.StringUtils;

/**
 * 分页工具类
 * @author Administrator
 *
 */
public class PageUtils {
	
	/**
	 * 创建分页对象
	 * @param pageNoStr
	 * @param pageSizeStr
	 * @param totalCount
	 * @return
	 */
	public static Pagination create(HttpServletRequest request, long totalCount) {
		
		String pageNoStr = request.getParameter("pageNo");
		String pageSizeStr = request.getParameter("pageSize");
		
		int pageNo = StringUtils.isEmpty(pageNoStr) ? 1 : Integer.valueOf(pageNoStr);
		int pageSize = StringUtils.isEmpty(pageSizeStr) ? 10 : Integer.valueOf(pageSizeStr);
		
		Pagination page = new Pagination();
		page.setPageSize(pageSize);
		page.setPageNo(pageNo);
		page.setTotal(totalCount);
		
		if ((page.getTotal() % page.getPageSize()) == 0) {
			page.setPageCount(page.getTotal() / page.getPageSize());
		} else {
			page.setPageCount(page.getTotal() / page.getPageSize() + 1);
		}
		
		
		//下一页、上一页
		if(pageNo == 1) {
			page.setPrePageNo(1);
		} else {
			page.setPrePageNo(pageNo - 1);
		}
		
		if(pageNo == page.getPageCount()) {
			page.setNextPageNo(pageNo);
		} else {
			page.setNextPageNo(pageNo + 1);
		}
		
		return page;
	}

}
